home *** CD-ROM | disk | FTP | other *** search
/ CD Concept 6 / CD Concept 06.iso / mac / UTILITAIRE / RLaB / WHATS.NEW < prev    next >
Text File  |  1995-01-25  |  19KB  |  650 lines

  1.  
  2. ***    What's New in Version v1.17 ?
  3.  
  4.     1.) Added Inf capability to 2nd arg of norm (see help, obscure
  5.     feature). 
  6.  
  7.     2.) hilbert.r: Hilbert transform, new file.
  8.  
  9.     3.) Some other obscure features/changes in various plotting
  10.     and numerical functions in order to make the testmatrix
  11.     toolbox an easier port.
  12.  
  13.     4.) Added frexp(), logb(), and log2().
  14.  
  15.     5.) Added second (optional) argument to getline to allow users
  16.     to read in entire line as a string.
  17.  
  18.     6.) Now you can do: 
  19.  
  20.         </ v ; d /> = eig (a);
  21.  
  22.     This is be-grudgingly supplied to help Matlab users
  23.     transition, and cut down on copies in functions.
  24.  
  25.     The thing on the left hand side is called an "open-list". See
  26.     `help LIST'
  27.  
  28. ***    What's New in Version v1.15 ? (I think this should be 1.16)
  29.  
  30.     1.) Some effort has been expended to re-work some of the guts
  31.     in an attempt to safely speed interpreter execution.
  32.     Additionally work has been done to clean up the parser
  33.     generated op-codes, and simplify the functions (operations) in
  34.     the virtual machine.
  35.  
  36.     Specifically: Re-work conditional interpretation.
  37.               Speed up temporary entity handling.
  38.  
  39.     Due to the nature of the beast (RLaB), execution times will
  40.     not change uniformly, some operations should be faster, some
  41.     might not change much.  But, on the whole, the trend should be
  42.     faster execution (anywhere from 0-50% on my machine).
  43.  
  44.     2.) Converted over to autoconf-v2.x. This should not mean
  45.     anything to users, configure is still run in basically the
  46.     same way.
  47.  
  48.     3.) Implementation of standardized floating-point exception
  49.     handling. Now rlab should ignore all floating point
  50.     exceptions, except overflow. This works on SVr3.2 and SVR4.x,
  51.     Suns, HPs, and Linux. If this gives you problems during build,
  52.     then see the PROBLEMS file (run configure with
  53.     `--disable-fpe').
  54.  
  55.     4.) A more accurate tic() and toc() using your system's
  56.     times(2) function (if it exists). If your system does not have
  57.     a times(2), then the older/less-precise tic() and toc() are
  58.     used. Users should note that using tic() and toc(), in either
  59.     implementation, is probably not valid for timing tests unless
  60.     the test take at least a few seconds (> 10 is best).
  61.  
  62.     5.) The scanner can now deal with Matlab style comments `%'.
  63.  
  64.     6.) The rfile command is now more useful. Rfile handles
  65.     multiple names and trailing comments.
  66.  
  67.     7.) More improvements in the autoconfiguration.
  68.  
  69.     8.) There is a new command, called `require' (see `help
  70.     require'). This command is like rfile, except that it won't
  71.     re-read files when the function already exists in the
  72.     workspace. 
  73.  
  74. ***    What's New in Version v1.13b ?
  75.  
  76.     1.) There has been an internal overhaul of builtin function
  77.     argument handling. No new features, just easier for people to
  78.     write dynamically linked builtin functions (rex-files) once
  79.     the documentation is done.
  80.  
  81.     2.) fvscope now annotates non-function, global variables with
  82.     an asterisk (`*').
  83.  
  84.     3.) New rfiles, section.r, show_prop.r.
  85.  
  86.     4.) Added plsfile to allow users to specify Plplot output
  87.     file. 
  88.  
  89.     5.) I have been working on configure again (a never ending
  90.     process). Now using dynamic-linking is standard for SVr4 and
  91.     Solaris. configure will look for plplot in /usr/local/plplot
  92.     and /usr/local/... if nothing is specified.
  93.  
  94.     6.) OVERHAUL FUNCTION SCOPING RULES. See `help FUNCTION',
  95.     `help global', `help local', and `help static'.
  96.  
  97.     7.) Functions can now use the variable `nargs' which is
  98.     automatically initialized to the number of arguments passed to
  99.     the function. see `help FUNCTION'.
  100.  
  101.     8.) det() now returns zero after issuing a warning when given
  102.     a singular matrix as an argument.
  103.  
  104.     9.) ode() can now take an optional last argument that is a
  105.     function to process the output. See `help ode'.
  106.  
  107.     10.) The Primer has been updated to reflect new scoping rules.
  108.  
  109.     11.) New gnuplot.r from Karl Storck.
  110.  
  111. ***    What's New in Version v1.09i ?
  112.  
  113.     1.) Mostly a portability release. Binary I/O has been improved
  114.     so it should work better on "non-standard" platforms
  115.     (DEC-alpha). Some clean ups have been done to make RLaB build
  116.     easier on HP-UX.
  117.  
  118.     2.) `make install' has been overhauled to use version numbers
  119.     on the executable, and the lib directory. The new install
  120.     procedure will also try and move the old stuff out of the
  121.     way. Nothing is removed, except the old executable. As always
  122.     `make -n install' is highly recommended.
  123.  
  124.     3.) Bug fixes to plhist, plhistx plotting. Addition of
  125.     subplot() function.
  126.  
  127.     4.) New builtin, putenv.
  128.  
  129.     5.) New argument for plot, see `help plot'. Also some 
  130.     general bug fixes in the plotting routines.
  131.  
  132.     6.) Add symmetric/Hermitian factorizations to `\', solve,
  133.     factor, backsub. factor and solve now have an optional
  134.     argument to allow the user to overide symmetry check.
  135.  
  136.     7.) Bug fix in eval() string argument check.
  137.  
  138. ***    What's New in Version v1.09 ?
  139.  
  140.     1.) Dynamic linking is functional for SVr4.0, SunOS-4.x,
  141.     SunOS-5.x. However, there is no documentation at this
  142.     point... Next release.
  143.  
  144. ***    What's New in Version v1.07 ?
  145.  
  146.     1.) Not much except for some bug fixes (plugged a memory
  147.     leak). Mostly there has been some re-organisation of the file
  148.     and function structure in an attempt to make dynamic linking
  149.     possible. Before we go any further though, a significant
  150.     amount of testing should be done.
  151.     
  152. ***    What's New in Version v1.05 ?
  153.  
  154.     1.) fread(), fseek(), if you are a C programmer you know what
  155.     these are. The args are a little different.
  156.  
  157.     2.) eval is now a built-in. Also eval returns the result of
  158.     the last statement, and can be used in function with local
  159.     variables. The best part is that eval no longer used temporary
  160.     files to do its job.
  161.  
  162.     3.) sign() is builtin.
  163.  
  164. ***    What's New in Version v1.02 ?
  165.  
  166.     1.) readm() is MUCH faster.
  167.  
  168.     2.) Revised toeplitz
  169.  
  170.     3.) Added tmpfile() (builtin).
  171.  
  172.     4.) Improved contour plotting so that only visible contours
  173.     are displayed in legend.
  174.  
  175.     5.) Improvements to `make Test' - much less use of rand().
  176.  
  177. ***    What's New in Version v1.0 ?
  178.  
  179.     1.) New functions (rfiles) bessely, besselj.
  180.  
  181.     2.) local() modified so that arguments are copied.
  182.     See `help FUNCTION'
  183.  
  184.     3.) Numerically singlular inputs to solve(), \ are now handled
  185.     with warnings and in a more uniform fashion.
  186.  
  187.     4.) ./misc/rlab-mode.el
  188.     I am NOT an Emacs-lisp programmer. This is hacked from
  189.     tcl-mode.el. if anyone can improve it - go for it.
  190.  
  191.     5.) Added plcont() - contour plotting.
  192.  
  193.     6.) The primer has been updated to match version 1.
  194.  
  195. ***    What's New in Version 0.99i ?
  196.  
  197.     1.) Added plhold(), plhold_off, and plegend().
  198.  
  199.     2.) New rfiles roots() and poly(), join() from T. S. Yang.
  200.  
  201.     3.) A more recent version of fftpack. Sorry, but the accuracy
  202.     is much better with the new version (rfft-1.2.tar.gz) -
  203.     precision demands it.
  204.  
  205.     4.) examples/plhold_demo.r is new.
  206.  
  207.     5.) The plot help has been split up into separate files.
  208.  
  209. ***    What's New in Version 0.99f ?
  210.  
  211.     1.) Added plmesh().
  212.  
  213.     2.) Added examples/curve_fit.r    
  214.  
  215.     3.) min(), max() now accept two numeric args.
  216.  
  217. ***    What's New in Version 0.99e ?
  218.  
  219.     1.) Bug fixes.
  220.  
  221.     2.) rfile will check the value of _rlab_search_path during
  222.     execution.
  223.  
  224. ***    What's New in Version 0.99d ?
  225.  
  226.     1.) Bug fixes.
  227.  
  228.     2.) ode() argument list is now consistent with ode4() and
  229.     ode78(). 
  230.  
  231.     3.) Added open() and getb().
  232.  
  233. ***    What's New in Version 0.99 BETA ?
  234.  
  235.     1.) New rfiles: mdsmax.r, and nmsmax.r. Both perform
  236.     unconstrained optimization.
  237.  
  238.     2.) Fixed non-Matlab-like behavior in acos(), and asin().
  239.  
  240.     3.) getline() returns a NULL string when a blank line is
  241.     encountered.
  242.  
  243.     4.) Added writeb() and readb(). Read and write binary files.
  244.     MATLAB compatibility (see `help readb', `help writeb').
  245.  
  246.     5.) Added ode(). Ordinary differential equation integrator
  247.     (netlib). 
  248.  
  249.     6.) Fixed readm() so it will read from pipes.
  250.  
  251.     7.) Added getenv() built-in function.
  252.  
  253.     8.) Plotting enhancements... plfont(), pltex(), plsori(),
  254.     plwid(), plaxis().
  255.  
  256.     9.) filter() is now a builtin, compatible with MATLAB's
  257.     implementation. 
  258.  
  259.     10.) Enhancements to matrix element-by-element operators, see
  260.     `help OPERATORS'. Added `.+' and `.-'
  261.  
  262. ***    What's New in Version 0.97 BETA ?
  263.  
  264.     1.) More plplot improvements. Updated primer to reflect plplot
  265.     usage. 
  266.  
  267.     2.) Some non-Unix portability enhancements.
  268.  
  269.     3.) Equality (== and !=) tests are allowed between numbers and
  270.     strings. 
  271.  
  272.     4.) New builtin function schord(). See `help schord'.
  273.  
  274. ***    What's New in Version 0.96 BETA ?
  275.  
  276.     1.) mod & atan2 functions now take various combinations of
  277.     matrices.
  278.  
  279.     2.) read() now taks optional 2nd argument (see `help read').
  280.  
  281.     3.) New fix(), and fixed up czt().
  282.  
  283.     4.) The configure script has been improved to take more
  284.     options (see INSTALL).
  285.  
  286.     5.) Changed eig (slightly), and added eigs (symmetric), eign
  287.     (non-symmetric). Non-symmetric generalized eign() returns
  288.     left-eigenvectors now.
  289.  
  290.     6.) Added strtod().
  291.  
  292.     7.) Added PLPLOT built-in plotting capability. You must have
  293.     the double precision version of the plplot library for it to
  294.     work. See `help plplot' and `examples/plot_test.r'.
  295.  
  296.     8.) Added sizeof() (see 'help sizeof') and re-worked whos().
  297.  
  298. ***    What's New in Version 0.9(3-5) BETA ?
  299.  
  300.     1.) New functions: complement(), intersection(), set(),
  301.     union(), faxis(), fftplot(), window(), fmin(), dot().
  302.  
  303.     2.) readm(), and writem() have been modified so that the row
  304.     and column values at the top of the file are no longer needed.
  305.     This means old files written with writem() will have to have
  306.     the first line filtered out. It also means that readm() should
  307.     be able to directly read "flat-files" written by other
  308.     programs. 
  309.  
  310.     3.) New & Improved qr(). New option qr(a,"p") for column
  311.     pivoting. And qr() now works on MxN where M < N as well as 
  312.     M >= N.
  313.  
  314.     4.) Function argument handling has been improved.
  315.         my_func ( , , A )
  316.     is now possible.
  317.  
  318.     5.) Many bug fixes.
  319.  
  320.     6.) fft(), and ifft() now work like MATLAB's
  321.  
  322.     7.) name() is gone (it wasn't of any use anymore anyway).
  323.  
  324.     8.) Added lyap() (user-function), and sylv() (builtin-function).
  325.  
  326.     9.) RLaB uses autoconf now.
  327.  
  328.     10.) Added issymm(), see `help issymm'.
  329.  
  330.     11.) Writem no longer closes the file after each call.
  331.  
  332.     12.) New and improved eig, see `help eig'.
  333.  
  334.     13.) Improved command line options. Added `-V' (version #),
  335.     `-m' (no message on startup), and a usage message if an
  336.     incorrect option is used.
  337.  
  338.     14.) Added czt() - Chirp z-transform.
  339.  
  340. ***    What's New in Version 0.92 BETA ?
  341.  
  342.     1.) New functions: input, num2str, funm, logm, disp, input,
  343.     mret finite, printmat, int2str, filter, and isempty.
  344.  
  345.     2.) A new builtin function called fvscope() (Function
  346.     Variable SCOPE). Fvscope identifies the variables used in a
  347.     function, and what their scope is. This is very useful for
  348.     writing general purpose library functions.
  349.  
  350.     3.) Bug fixes to the error recovery.
  351.  
  352. ***    What's New in Version 0.91 BETA ?
  353.  
  354.     1.) RLaB can now load() files while executing code, such as in
  355.     for, or while loops, or within functions. This makes a simple
  356.     eval function possible. See `help load', `help eval', 
  357.     `help BUGS'.
  358.     
  359.     2.) Added expm() rfile.
  360.  
  361. ***    What's New in Version 0.86 BETA ?
  362.  
  363.     1.) Bug fixes.
  364.  
  365. ***    What's New in Version 0.85 BETA ?
  366.  
  367.     1.) Enhanced svd(), See `help svd'.
  368.  
  369.     2.) Bug fixes.
  370.  
  371. ***    What's New in Version 0.84 BETA ?
  372.  
  373.     1.) Added schur()
  374.  
  375.     2.) Bug fixes.
  376.  
  377. ***    What's New in Version 0.83 BETA ?
  378.  
  379.     1.) The usual bug fixes.
  380.  
  381.     2.) Added doc/tutorial.3.tex (List Tutorial).
  382.  
  383. ***    What's New in Version 0.82 BETA ?
  384.  
  385.           1.) My apologies again, but I have restructured the class,
  386.               type hierarchy in rlab. This was necessary for several
  387.               reasons. The new hierarchy is only slightly different, and
  388.               is described in the help files: class, type, and show. The
  389.               new hierarchy looks like: (from the help file "type")
  390.  
  391.             CLASS:    num
  392.             TYPES:    real      complex
  393.  
  394.             CLASS:    string
  395.               TYPES:    string
  396.  
  397.             CLASS:    list
  398.             TYPES:    (see note 1.)
  399.  
  400.             CLASS:    function
  401.             TYPES:    user      builtin
  402.  
  403.           2.) Improved type().
  404.  
  405.           3.) Improved test-suite.
  406.  
  407.           4.) Improvements in the makefile install target.
  408.  
  409.           5.) Rlab now has a command line editing option that is much
  410.           smaller than GNU readline. Courtesy of Chris Thewalt.
  411.  
  412.         See `help COMMAND_EDIT' 
  413.  
  414.     6.) The contrib directory has been removed. Most of the
  415.     contrib directories contents have been moved to the toolbox
  416.     directory. I did this because I have been forgetting to keep
  417.     the contrib directories files current with rlab. Also, the
  418.     original intention was to keep unaltered, contributed rfiles
  419.     there. Since I have had to modify the contents of contrib to
  420.     keep up with the changes in rlab, the contrib directory no
  421.     longer seemed appropriate. Maybe when rlab gets to v1.0.
  422.  
  423.     7.) Small modifications to existing ODE integration functions.
  424.  
  425.     8.) Added setterm(), showplot, phrd() to plot functionality.
  426.  
  427. ***    What's New in Version 0.78 BETA ?
  428.  
  429.     1.) Added file static() declaration.
  430.  
  431.     2.) Added exist() built-in function.
  432.  
  433.     3.) diag(), ones() are builtin.
  434.  
  435.     4.) Added whos().
  436.  
  437.     5.) Improved plot(), added pclose().
  438.  
  439.     6.) Added factor(), backsub(). lu() is now a user-function.
  440.  
  441.           7.) My apologies, but I found the "dummy" name scheme for
  442.               determining the status of a function argument to be
  443.               totally inappropriate for nested function calls.
  444.               Therefore, I have changed rlab behavior so that functions
  445.               that are called with fewer args than declared are supplied
  446.               UNDEFINED arguments to fill out the argument list. To test
  447.               the status of an argument do:
  448.  
  449.               if (!exist (ARG))
  450.               {
  451.                 // initialize the ARG, error(), whatever...
  452.               }
  453.  
  454.           8.) Added qq_normal(), fliplr(), flipud() to ./toolbox
  455.  
  456. ***    What's New in Version 0.75 BETA ?
  457.  
  458.     1.) Fixed cumsum(), and cumprod() (much more efficient).
  459.         New rfiles save.r, clearall.r.
  460.  
  461.     2.) Finished 1st draft of function tutorial.
  462.  
  463.     3.) Improved getline().
  464.  
  465.     4.) Removed need to terminate function declaration with `;' or
  466.         `\n'. 
  467.  
  468.     5.) The usual bug fixes, documentation improvements, etc...
  469.  
  470. ***    What's New in Version 0.73 BETA ?
  471.  
  472.     1.) length() more compatible with the other length().
  473.  
  474.     2.) $$ can be used as global symbol table constant.
  475.  
  476. ***    What's New in Version 0.71 BETA ?
  477.  
  478.     1.) cd(). New function. Changes current working directory.
  479.  
  480.     2.) redit.r: For editing rfiles.
  481.  
  482.     3.) Addition to config.h (HAVE_INDEX).
  483.  
  484. ***    What's New in Version 0.70 BETA ?
  485.  
  486.     1.) Faster matrix multiplication functions ( ~ 20% ).
  487.     
  488.     2.) sum(), and prod(), are builtin (faster). cumsum(), and
  489.         cumprod() will be builtin shortly (rfiles for now.
  490.  
  491.     3.) Better signal handling.
  492.  
  493.     4.) Some interpreter speedups.
  494.  
  495.     5.) Matrix powers finally work.
  496.  
  497.     6.) Some type-checking/handling consistency improvements.
  498.  
  499.     7.) The example plot() function is simpler now.
  500.  
  501.     8.) Empty matrix syntax added ( `[]' ).
  502.  
  503.     9.) fft(), ifft() now work on MxN matrices. max(), and min()
  504.         any(), all(), sort(), work more like MATLAB versions.
  505.  
  506.     10.) Many, many  bugs fixed.
  507.  
  508.     11.) `[ : ]' operation added. Forces Nx1 orientation of matrix.
  509.  
  510.     12.) Complex atan, acos, asin, tan now work.
  511.  
  512.     13.) A stop-gap matrix-tutorial in ./doc, updated man-page.
  513.  
  514.     14.) .' non-conjugate transpose.
  515.  
  516.     15.) getline() returns an empty list when nothing is read. See
  517.         `help getline'.
  518.  
  519.     16.) length(): New function.
  520.  
  521.     17.) `#!' can be used in rlab scripts.
  522.  
  523. ***    What's New in Version 0.52 ALPHA ?
  524.  
  525.     1.) Bug fixes.
  526.  
  527.     2.) Now sort() returns a list of the sorted values, and the
  528.     sorted indices. 
  529.  
  530.     3.) maxi()/mini() now return a scalar index value. This value
  531.     can be used directly to index another matrix.
  532.  
  533. ***    What's New in Version 0.51 ALPHA ?
  534.  
  535.     1.) The help and rfile commands are more versatile. For
  536.     example: `help help' will work now.
  537.  
  538.     2.) Vector creation (d1:d2:d3) rules make more sense (see
  539.     `help VECTOR').
  540.  
  541.     3.) A\B, and C/D now use a more efficient algorithm when A or
  542.     C is square.
  543.  
  544.     4.) There is a brief man-page.
  545.  
  546.     5.) Some bug fixes in max(), min(), and mod().
  547.  
  548.     6.) A directory of test-matrix functions has been added under
  549.     the examples directory. 
  550.  
  551. ***    What's New in Version 0.50 ALPHA ?
  552.  
  553.     1.) The find function is now a builtin (much faster).
  554.  
  555.     2.) The if-statement syntax has changed slightly. Used to be: 
  556.  
  557.         if ( expression ) {
  558.           statement(s)
  559.         } else { // The braces and the else must be on the same line
  560.           statement(s)
  561.         }
  562.  
  563.     Now the correct syntax is:
  564.  
  565.         if ( expression )
  566.         {
  567.           statement(s)
  568.         else
  569.           statement(s)
  570.         }
  571.  
  572. ***    What's New in Version 0.32 ALPHA ?
  573.  
  574.     1.) Added `rfile' command. `file name' now loads the file
  575.     named `name.r' if it can be located in your RLAB_SEARCH_PATH.
  576.     The simple command `rfile' prints a list of all the rfiles
  577.     that appear in RLAB_SEARCH_PATH.
  578.  
  579.     2.) Changed `help' command to be consistent with `rfile'
  580.     command. The simple command `help' prints a list of: the help
  581.     files in the default help directory, and the rfiles in
  582.     RLAB_SEARCH_PATH. `help name' prints the content of the file
  583.     `name' to the standard output. If the file does not exist in
  584.     the default help directory, RLAB_SEARCH_PATH is searched.
  585.  
  586.     3.) The `rlib' directory contents are now loaded upon startup,
  587.     instead of having a HUGE `.rlab' file. Added RLAB_LIB_DIR for
  588.     post-compile specification of library directory.
  589.  
  590.     4.) All matrix output is paged. The pager is specified in the
  591.     config.h file.
  592.  
  593.     5.) Added getline() function. Works sort-of-like the awk
  594.     getline. `x = getline("filename")' gets a line-at-time, and
  595.     splits it into fields. Each field is a member of a list. Thus,
  596.     x.[1] ... x.[N] contain the all the information from the line.
  597.  
  598.     6.) Added strsplt(). Splits a string into a matrix of single
  599.     characters.
  600.  
  601. ***    What's New in Version 0.30 ALPHA ?
  602.  
  603.     Version 0.3x is the last of the ALPHA test releases. Notice I
  604.     did not say 0.30, since I do expect to release bug-fixes to
  605.     v0.30. The major obstacle to starting beta test is a better
  606.     online help, and a good printed manual. Other than bug-fixes
  607.     these two goals will be my major priority.    
  608.  
  609.     1.) RLaB-0.30 is more MATLAB-like.
  610.  
  611.     2.) Vectors have been remove as a distinct type. However, all
  612.     of the usefulness of vectors is still accessible via single
  613.     indexed matrices. 
  614.  
  615.     Side effects: 
  616.  
  617.     This means that the append operator, `,', does not function
  618.     outside the [ ]. Instead, the comma (outside []) serves in a
  619.     more traditional sense, as an argument list separator.
  620.  
  621.     Some of the built-in functions arguments are different. For
  622.     example, zeros used to take a 2-element vector as an arg. Now
  623.     zeros will accept two scalars, or a 2-element matrix.
  624.  
  625.     3.) RLaB has adopted the MATLAB operator syntax.
  626.  
  627.     + - * /    \ ^    Work in the traditional LA sense.
  628.        .* ./ .\ .^    Work in the element-by-element sense.
  629.  
  630.     Note that `2./A' is the same as `2 ./ A'
  631.     Also note that `^' is not fully implemented yet.
  632.  
  633.     4.) The printed documentation has been removed. Two of the
  634.     alpha testers have volunteered to overhaul the printed docs in
  635.     latex or latexinfo. 
  636.  
  637.     5.) Some changes in the numeric output format, and the
  638.     format() built-in function. See `help format'.
  639.  
  640.     6.) RLaB will use matherr() instead of errno, If your machine
  641.     supports it (and you select it in config.h). This option
  642.     should prove much faster than checking errno after every math
  643.     library function call.
  644.  
  645.     7.) New built-in functions: inf(), nan(), round().
  646.  
  647.     8.) Matrix 2-norm has been added to norm(); `norm( m, "2" )'.
  648.  
  649.     9.) "clock" option added to srand(); sets seed via the machine clock.
  650.